#ifndef _FILTER_INTERFACE_
#define _FILTER_INTERFACE_

#include <vector>
#include "../http.h"
#include "abstract_filter.h"


class FilterInterface
{
	std:: vector <AbstractFilter *> request_list;
	std:: vector <AbstractFilter *> reply_list

private:
	FilterInterface(void);
	
public:
	~FilterInterface(void);

	
public:
	FilterInterface *getInstance();
	bool processConfig(char* path);
	bool processReply(HttpStateData *) ;
	bool processRequest(HttpStateData *);

private:
	bool addFilter(AbstractFilter *);
	bool registerFilter(char *filterName) ;
	


};


#endif